import Http from '@/utils/http';

// 获取首页指定时间范围的顶部仪表数据
export function homeStatistics (params){
  return Http.Get('service/bchelper/index/statistics', params)
}

export function getAlarm(params){
  return Http.Get('/service/bchelper/alarm/list', params)
} 

// 获取车辆总数和今日在线车辆数，同时返回各设备最新的经纬度，是否在线（首页地图中展示）
export function workState(){
  return Http.Get('service/bchelper/index/equip/latest/workstate')
}

// 获取设备参与的工程总数和近30天有泵送行为的工程数
export function projectCount(){
  return Http.Get('service/bchelper/index/equip/latest30/project/count')
}

// 获取指定日期范围的按设备的泵送总量统计，包括行业平均泵送量
export function pumpStatistics (params){
  return Http.Get('service/bchelper/index/equip/pump/statistics', params)
}

// 获取指定日期范围的按各状态的工作时间统计
export function segmentWorkTime (params){
  return Http.Get('service/bchelper/index/equip/segment/worktime/statistics', params)
}

// 获取指定日期范围的按设备的工作时间统计，包括行业平均工作时间
export function equipWorkTime (params){
  return Http.Get('service/bchelper/index/equip/worktime/statistics', params)
}

// 获取指定日期范围的按各状态的油耗统计
export function segmentOil (params){
  return Http.Get('service/bchelper/index/equip/segment/oil/statistics', params)
}

// 获取指定日期范围的按设备的油耗统计，包括行业平均油耗
export function equipOil (params){
  return Http.Get('service/bchelper/index/equip/oil/statistics', params)
}

/**
 * 获取一辆设备选定时间范围里的分状态的油耗时间数据
 * @param {string} equipCode 设备编码
 * @param {string} beginDate 设备编码
 * @param {string} endDate 设备编码
 */
export function equipOneOil (params) {
  return Http.Get('service/bchelper/equip/one/workstate/statistics', params)
}

// 获取一辆车选定时间范围里的详细统计数据
export function equipOneDetail (params) {
  return Http.Get('service/bchelper/equip/one/detail/statistics', params)
}

// 获取一辆车选定时间范围里的设备工况画像数据
export function equipOneChart (params) {
  return Http.Get('service/bchelper/equip/one/chart/statistics', params)
}

// 获取一辆设备选定时间范围里的分状态的油耗时间数据
export function equipOneWorkState (params) {
  return Http.Get('service/bchelper/equip/one/workstate/statistics', params)
}

// 注册
export function register (params) {
  return Http.Post('service/bchelper/user/register', params)
}

// 登录
export function login (params) {
  return Http.Get('service/bchelper/user/login', params)
}

// 忘记密码
export function forgetPwd (params) {
  return Http.Post('service/bchelper/user/reset/password', params)
}

/**
 * 设备列表
 * @param {string} equipCode 设备编码模糊查询
 */
export function equipList (params) {
  return Http.Get('service/bchelper/equip/list', params)
}

/**
 * 绑定设备
 * @param {string} equipCode 设备编码
 */
export function userEquipBind (params) {
  return Http.Post('service/bchelper/user/equip/bind', params)
}

/**
 * 新注册推荐设备列表
 */
export function equipRecommendList () {
  return Http.Get('service/bchelper/equip/recommended/list')
}

/**
 * 解绑设备
 * @param {string} equipCode 设备编码
 */
export function userEquipUnBind (params) {
  return Http.Post('service/bchelper/user/equip/unbind', params)
}

/**
 * 我已绑定的设备列表
 */
export function userEquipList (params) {
  return Http.Get('service/bchelper/user/equip/list', params)
}

/**
 * 获取工程列表统计数据
 */
export function projectList () {
  return Http.Get('service/bchelper/project/list')
}

/**
 * 获取一个工程的详细统计数据（方量，泵送时间，油耗等等）
 * @param {string} projectId 设备编码
 */
export function projectDetail (params) {
  return Http.Get('service/bchelper/project/one/detail/statistics', params)
}

/**
 * 获取一个工程名称和详细地址
 * @param {string} projectId 设备编码
 */
export function projectName (params) {
  return Http.Get('service/bchelper/project/one/name', params)
}

/**
 * 保存修改后的工程名字和状态
 * @param {string} projectId 设备编码
 * @param {string} projectName 修改名称
 * @param {string} projectStatus 工程状态
 */
export function updateProjectName (params) {
  return Http.Post('service/bchelper/project/one/update/name', params)
}

/**
 * 获取一个工程的画像数据
 * @param {string} projectId 设备编码
 */
export function projectRatio (params) {
  return Http.Get('service/bchelper/project/one/ratio', params)
}

/**
 * 取一个工程的参与车辆详情列表
 * @param {string} projectId 设备编码
 */
export function projectEquipsList (params) {
  return Http.Get('service/bchelper/project/one/equips/list', params)
}

/**
 * 获取一个工程的概括(投入产出比，开始时间，结束时间，工作车辆，工作车次，转场次数)
 * @param {string} projectId 设备编码
 */
export function projectOutline (params) {
  return Http.Get('service/bchelper/project/one/outline', params)
}

/**
 * 获取指定月份中公司车辆工作详情
 * @param {string} beginTime
 * @param {string} endTime
 */
export function carDayDetail(params) {
  return Http.Get('service/bchelper/report/dayrange/statistcs', params)
}

/**
 * 获取指定月份中公司和行业每天的平均油耗
 * @param {string} beginTime
 * @param {string} endTime
 */
export function carDayOil(params) {
  return Http.Get('service/bchelper/report/dayrange/oil/statistcs', params)
}

/**
 * 获取指定年份中公司和行业每月的平均油耗
 * @param {string} beginTime
 * @param {string} endTime
 */
export function carMonthOil(params) {
  return Http.Get('service/bchelper/report/monthrange/oil/statistcs', params)
}


/**
 * 获取指定月份中公司和行业每天的平均工作时间
 * @param {string} beginTime
 * @param {string} endTime
 */
export function carDayTime(params) {
  return Http.Get('service/bchelper/report/dayrange/worktime/statistcs', params)
}


/**
 * 获取指定年份中公司和行业每天的平均工作时间
 * @param {string} beginTime
 * @param {string} endTime
 */
export function carMonthTime(params) {
  return Http.Get('service/bchelper/report/monthrange/worktime/statistcs', params)
}


/**
 * 获取指定月份中公司和行业每天的平均泵送方量
 * @param {string} beginTime
 * @param {string} endTime
 */
export function carDayQuantity(params) {
  return Http.Get('service/bchelper/report/dayrange/quantity/statistcs', params)
}

/**
 * 获取指定年份中公司和行业每天的平均泵送方量
 * @param {string} beginTime
 * @param {string} endTime
 */
export function carMonthQuantity(params) {
  return Http.Get('service/bchelper/report/monthrange/quantity/statistcs', params)
}

/**
 * 从首页车辆数字点进来后在地图上显示车辆，因而获取设备的最新位置信息列表
 */
export function carListLocation () {
  return Http.Get('service/bchelper/equip/location/list')
}

/**
 * 获取车辆列表统计数据（包括设备编号，状态（工作/停机），今日油耗，工作时间，泵送总量）
 */
export function carListData () {
  return Http.Get('service/bchelper/equip/latest')
}

/**
 * 获取首页指定日期里设备有数据的日期列表
 * @param {string} equipCode 设备编码
 * @param {string} beginDate 设备编码
 * @param {string} endDate 设备编码
 */
export function activeDay (parmas) {
  return Http.Get('service/bchelper/equip/one/fired/date',parmas)
}